#pragma once
#include "Effect.h"

namespace XamlFx
{
    [Windows::Foundation::Metadata::WebHostHidden]
    public ref class BlurEffect sealed : public Effect
    {
    public:
        BlurEffect();
        virtual ~BlurEffect();
    public:
        DEPENDENCY_PROPERTY(Radius, double)
    protected private:
        virtual auto GetEffect(d2d::Bitmap const& input) -> d2d::Effect override;
        virtual void OnInitialized() override;
    private:
        void SetPadding();
    private:
        d2d::Effect m_effect;
    private:
        static void OnBlurChanged(xaml::DependencyObject^ d, xaml::DependencyPropertyChangedEventArgs^ e);
    };
}
